package com.prueba.client.datos;


import java.util.Enumeration;
import java.util.HashMap;
import java.util.Hashtable;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;


import com.prueba.client.servicios.ConfiguracionDocManager;
import com.prueba.client.servicios.Servicios;
import com.smartgwt.client.data.DataSource;
import com.smartgwt.client.data.fields.DataSourceTextField;


 
public class ConfiguracionDocData extends DataSource {  
  
	
	
    private static ConfiguracionDocData instance = null;  
    
    public static ConfiguracionDocData getInstance() {  
        if (instance == null) {  
            instance = new ConfiguracionDocData();  
        }  
        return instance;  
    }  
  
    //Metodo para setear los datos del DataSource:
    public void setDatos(HashMap<String, String> result){
    	
    	//Iterador para recorrer el mapa de hash:
    	Iterator<Entry<String, String>> it = result.entrySet().iterator();
    	
    	//Recorremos todos los elementos, por cada uno agregamos un record con la info:
    	while (it.hasNext()) {
    		Entry<String, String> e = it.next();
    		 this.addData(new ConfiguracionDocRecord(e.getValue(),e.getKey()));
    	}
    	
    }
    
    public ConfiguracionDocData() {  
    	
    	//Campo para editar el tipo:
        DataSourceTextField tipo=new DataSourceTextField("tipo", "Tipo");
        tipo.setRequired(true);  
        tipo.setCanEdit(true);
       
        //Campo para editar el nivel:
        DataSourceTextField nivel=new DataSourceTextField("nivel", "Nivel");
        nivel.setRequired(true);
        nivel.setCanEdit(true);
        //Solo un tipo de nivel puede haber:
        nivel.setPrimaryKey(true);
        
        
        //Asignamos los campos:
        setFields(nivel,tipo);  
         
        setClientOnly(true); 
        
    	
    	//Obtenemos los datos del XML:
    	ConfiguracionDocManager.getConfDoc();
        
    }  	
}  